#ifndef CONNECTIONSMANAGER_H
#define CONNECTIONSMANAGER_H

#include <defs/export.h>
#include <defs/global.h>

#include <QtCore>
#include "connectionproviders/connectionprovider.h"

namespace Optra{ namespace Engine{ namespace Server {

	O_PRIVATE_DECLARE(ConnectionsManager);
	class ConnectionsManager : public QObject {
		Q_OBJECT
	public:
		ConnectionsManager(QObject *parent = 0);    
		virtual ~ConnectionsManager();
		bool RegisterProvider(const ConnectionProviderPtr& p);

		void Start();
	private:
		O_PRIVATE_DECLARE_MEMBER(ConnectionsManager);
	};

	typedef QSharedPointer<ConnectionsManager> ConnectionsManagerPtr;

}}}

#endif // CONNECTIONSMANAGER_H


